/*
 * InvocateurCommand.h
 *
 *  Created on: 2 janv. 2012
 *      Author: mnemoi
 */

#ifndef INVOCATEURCOMMAND_H_
#define INVOCATEURCOMMAND_H_

#include <fstream>
#include <iostream>
#include "Command.h"

using namespace std;
class Command;
class InvocateurCommand {

private:
	Command* currentCmd;
	vector<Command*> pileExecution;
	fstream fichier;
public:

	InvocateurCommand() {
		cout <<"ici";
		fichier.open("commandes.txt", ios::in); // on ouvre le fichier en lecture

		if (fichier) // si l'ouverture a réussi
		{
			// instructions
			cout << "yeah" << endl;
			fichier.close();  // on ferme le fichier
		} else
			// snon
			cerr << "Impossible d'ouvrir le fichier !" << endl;
	}
	int getInt();
	string getString();
	Objet getObjet();
	Obstacle getObstacle();
	void ajouterCmd(Command*);
	Command* depilerLastCmd();
	void executer();
	void annuler();
	void setCmd(Command* cmd);

};

#endif /* INVOCATEURCOMMAND_H_ */
